/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package ge.info.domain;

import ge.info.domain.currency.Currency;
import ge.info.domain.others.OthersInfo;
import ge.info.domain.schedule.ScheduleItem;
import ge.info.domain.schedule.SchedulePlace;
import ge.info.domain.schedule.ScheduleType;
import ge.info.domain.sport.SportItem;
import ge.info.domain.sport.SportPlace;
import ge.info.domain.sport.SportTournament;
import ge.info.domain.sport.SportType;
import ge.info.domain.transport.Transport;
import ge.info.logging.Session;
import java.util.HashMap;
import java.util.List;
import java.util.TreeMap;

/**
 *
 * @author koka
 */
public interface DbExecutorIface
{

    List<TreeMap> getGeoIndMessages(StringString stringString);

    void inscharge(int id, Session session);

    void insorgcharge(int id, Session session, int mainid);

    void insdiscovery(Discover discover, Session session);

    List<TreeMap> getSMessages(StringString stringString);

    List<TreeMap> getWMessages(StringString stringString);

    List<TreeMap> getSmsinMessages(StringString stringString);

    List<TreeMap> getNMessages();

    StringString getLotwinner();

    StringString getVerlotwinner();

    List<TreeMap> getRMessages(String usnm);

    List<TreeMap> getMenMessages();

    List<TreeMap> getChMessages(StringString stringString);

    List<TreeMap> getDistanceMessages(StringString stringString);

    void fillOrganizationMasterSlaves(Organization org);

    List<String> findCountryByCurrency(String curr);

    List<ServiceDetail> getAllServiceDetails();

    void getMainResultDetails(MainResult result, Session session);

    List<MainResult> getMainResults(List<Integer> list);

    Organization getOrganizationByID(Integer id);

    void getOrganizationDetails(Organization result);

    List<Transport> getRouteParts(Transport transport);

    List<ScheduleItem> getScheduleItems(SchedulePlace sp, ScheduleType st);

    List<SportItem> getSportItems(SportPlace sp, SportType st);

    List<SportTournament> getSportTournaments(SportPlace sp, SportType st);

    List<ScheduleType> getScheduleTypes();

    List<SportType> getSportTypes();

    List<Service> getServices();

    void insertSession(Session session);

    void insertErOp(String oper,String opip,String status,String cdate);

    void insertLot(Session session);

    void logMainResult(int mainID, Session session, Service service);

    boolean loginCheck(StringString userNamePassword);

    ScheduleType populateSchedulePlaces(ScheduleType st);

    SportType populateSportPlaces(SportType st);

    void populateServiceDetails(Service service);

    List<Integer> search(Service service);

    List<ScheduleType> searchAllPosters(ScheduleType st);

     List<SportType> searchspAllPosters(SportType st);

     List<SportItem> searchspPostersdet(SportItem itm);

    List<City> searchCityCode(String code);

    List<City> searchCityCodes(String cityName);

    List<City> searchCountryCityCodes(Country country);

    List<City> searchCountryCode(String code);

    List<StringString> searchCountryOperators(Country country);

     List<StringString> getOthersSection();

     List<StringString> getSitesSection();

     List<OthersInfo> searchInfo(OthersInfo oth);

      List<OthersInfo> searchSiteInfo(OthersInfo oth);

    List<Integer> searchDetails(Service service, Session session, boolean searchDetails);

    List<AbonentFound> searchInd(AbonentFound af, Session session);

//    List<AbonentFound> searchInd(AbonentFound af, Country country);
    List<AbonentFound> searchIndByPhone(String ph, Session session);


    List<AbonentFound> searchOrgByPhone(String ph);

    List<Organization> searchOrganizations(Organization org);

    ScheduleType searchPosters(ScheduleType st);

    SportType searchspPosters(SportType st);

    List<Street> searchStreet(Street street);

    List<Transport> searchTransport(Transport transport, Session session);

    List<Transport> searchTransportByCountry(Transport transport, Session session);

    List<Transport> searchTransportByNo(Transport transport);

    List<Transport> searchTransportByRoute(Transport transport);

    List<Transport> searchTransportStops(Integer id);

     Street searchStreetdet(int streetID);

    void setRates(Currency c1, Currency c2, Session session);

    void setDRates(Currency c1, Currency c2, Session session);

    void setMrates(Currency c1, Currency c2, Session session);

    void setDMrates(Currency c1, Currency c2, Session session);

    void setSmrates(Currency c1, Currency c2, Session session);

    void setDSmrates(Currency c1, Currency c2, Session session);

    void setSessionData(Session session);

    List<Transport> searchTripCriteria(Transport transport);

    void insertDiscoveryPhone(HashMap map);

    Mymobile findMobile(Mymobile mymobile);

    String getNoncharge(String ph);

    String getNextSessionID();

    String getNotemob();

    String getNotesb();

    String getDebts(String phone);

    void logHits(Session session, Integer id, Integer serviceID);

    void updtr(Session session,String cphone, String lnote);
    
    void updfl(Session session);

    void insertSms(Session session, String txt,int SERVICE_ID );

    void insertMobName(Session session, String dnm, int sex);
}
